The present disclosure relates in general to the field of computer software development tools, and more specifically, to facilitating a shared software development environment.
Software development can involve a variety of tools to support a development life cycle of an application or system. The development cycle can include activities such as system design, development, integration and testing, deployment, maintenance, and evaluation. As software systems become more complex, such as in service-oriented architectures linking multiple traditional systems (from potentially multiple different software vendors) other development cycles and strategies are emerging, including waterfall, spiral, Agile development, rapid prototyping, incremental, and synchronize and stabilize. In the case of Agile methodologies, the focus can be on lightweight processes which allow for rapid and iterative changes within the development cycle. Further complicating the tasks and management of development activities within modern software development is the reality that multiple developers often collaborate to build and perform development tasks involving a single system. Traditional development tools, such as debuggers, profilers, loggers, etc. can be ill-equipped to handle the evolving landscape of software development, particularly within shared development environments.